1. Field of the Invention
The present invention relates to a spread spectrum communication system.
2. Description of Related Art
Spread spectrum communications is a method in which the spectrum of an information signal is spread into much wider bandwidth by multiplying the information signal by a spreading code, thereby transmitting the information with much wider bandwidth than that of the original information signal, and has characteristics such as communication secrecy, anti-interference, anti-multipath fading, and multiple access capability. The term multiple access refers to a communication system in which a plurality of mobile stations communicate simultaneously with a base station. The performance of the spread spectrum communications depends on a spreading factor which is defined as a ratio of the bandwidth of transmission to that of the information signal, that is, a ratio of the rate of the spreading code to that of the information transmission. The spreading factor, represented in terms of dB, is called the processing gain. For example, if the rate of the information transmission is 10 kbps, and that of the spreading code is 1 Mcps, the spreading factor becomes 100, and the processing gain 20 dB.
The multiple access using the spread spectrum communications is termed CDMA (Code Division Multiple Access). In the CDMA system, each one of the users or channels uses a different spreading code so that they are distinguished by the spreading codes.
Although the CDMA system has been considered to be inferior to the other multiple access Systems such as TDMA (Time Division Multiple Access) in channel capacity (the number of channels in a particular bandwidth), Gilhousen, et al, report that it is superior to the TDMA system when applied to a cellular telephone system, as disclosed in Gilhousen et al, "On the Capacity of a Cellular CDMA Systems", IEEE Transactions on Vehicular Technology vol. 40, No. 2, May 1991.
FIG. 28 shows a transmitter of a base station in a cellular mobile communication system disclosed in the above-mentioned paper. To transmit information to a plurality of users at the same time, the base station makes a multiplexed signal from respective users' signals and then transmits them. In FIG. 28, the reference numerals 2801-280N denote digital processors of the signals to individual users (user #1-user #N) whose output signals are multiplexed and carrier modulated by a digital linear combiner and QPSK modulator 2810. Its output is fed to a transmitter 2811, and undergoes frequency conversion and power amplification to be transmitted to mobile stations. The QPSK (Quadrature Phase Shift Keying) is usually called quadrature digital phase modulation.
Although interference amounts between users are kept low in a CDMA system because of employing different spreading codes, the total interference amount increases with the number of users. The total interference amount and allowable received signal quality decide the channel capacity.
A base station can multiplex signals with each signal being synchronized. In this case, using orthogonal codes as spreading codes makes it possible to reduce to zero the interference among mobile stations receiving the signals transmitted from the same base station. Thus using the orthogonal codes enables the interference to be reduced, and is very preferable for the CDMA system, although transmitted signals from other base stations or multipath fading signals with different received timings even from the same base station cause interference between signals.
The conventional techniques described below use multiplex transmission employing orthogonal codes in the transmission from a base station to mobile stations except for the cases otherwise specified.
FIGS. 29 and 30 illustrate a multiplex transmission method of a base station disclosed in U.S. Pat. No. 5,103,459, for example. The apparatus shown in FIG. 29 corresponds to one of the transmitted signal digital processors 2801-280N as shown in FIG. 28, and the apparatus shown in FIG. 30 correspond to the linear combiner and QPSK modulator 2810 and the transmitter 2811 as shown in FIG. 28.
In FIG. 29, voice channel data 2901 is error correcting encoded by an error correcting encoder 2902, interleaved by an interleaver 2903, and then input to a data scrambler 2904. The data scrambler 2904 carries out exclusive OR operation between the input and another input, a PN code generated by a PN code generator 2905, thus being data scrambled. Since only the data scramble rather than spectrum spreading is intended here, the code rate of the PN code generated by the PN code generator 2905 is the same as the bit rate of the output of the interleaver 2903.
The output of the data scrambler 2904 is converted by an orthogonal encoder 2906 into orthogonal codes by using Walsh functions provided by a Walsh generator 2907. The Walsh functions are orthogonal code sequences generated on the basis of an Hadamard matrix, such that different Walsh functions are assigned to respective users. In the example as shown in FIG. 29, the orthogonal encoding is carried out at a code rate 64 times faster than the bit rate of the data output from the scrambler 2904.
The output of the orthogonal encoder 2906 is fed to two spread spectrum modulators (EXORs) 2908 and 2909 to be spectrum spread by different PN sequences generated by two PN code generators 2910 and 2911. The PN codes generated by the PN code generators 2910 and 2911 are common to the entire users, and are used to reduce interference between signals transmitted from different base stations. The rate of the PN codes are the same as that of the Walsh functions.
The output of the spread spectrum modulators 2908 and 2909 undergo waveform shaping (band limitation) by FIR (Finite Impulse Response) filters 2912 and 2913, gain adjusted by gain adjusters 2914 and 2915, and then input to the linear combiner and QPSK modulator as shown in FIG. 30. To the linear combiner and QPSK modulator, spread spectrum signals are fed which have been orthogonal encoded using orthogonal codes having the same structure with but different patterns from those as used in FIG. 29 (that is, Walsh functions of different numbers).
The orthogonal encoded spread spectrum signals are converted into analog signals by digital-to-analog (DA) converters 3011-30N2, and are input to an adder (.SIGMA.I) 3030 and an adder (.SIGMA.Q) 3031 to be added, respectively, thereby being output as multiplexed signals. The multiplexed signals are multiplied by two orthogonal carriers, sin(2.pi.ft) and cos(2.pi.ft), in multipliers 3032 and 3033, respectively, and then combined by an adder (.SIGMA.) 3034, thereby QPSK modulated.
In this case, since the same information of each user is halved to undergo the spectrum spreading by different PN code sequences and subsequently the QPSK modulation, the information modulation is BPSK modulation (binary PSK or binary digital phase modulation) and the spreading modulation is QPSK (quadrature digital phase modulation).
The QPSK modulated multiplexed signal is multiplied in a multiplexer 3035 by a sine wave provided from a frequency synthesizer, and the fundamental wave component of its output is extracted through a bandpass filter (BPF) 3036. The output of the filter is power amplified by an RF amplifier (RF AMP) 3037, and is led to an antenna.
In the CDMA system, larger channel capacity is achieved when the total interference power is reduced. In the voice communications, as there are soundless intervals, the channel capacity can be increased by an amount corresponding to suppression of information transmission during the soundless intervals.
In the example as shown in FIGS. 29 and 30, the rate of the voice encoders is permitted to be set at one of four steps (full rate, 1/2, 1/4 and 1/8) in response to the voice communication state so as to increase the channel capacity, and the transmission power is set in accordance with the rates. More that is, although each encoder outputs data at the same rate, it repeats the contents of the output by the number corresponding to the rates, so that the transmission power can be reduced in accordance with the number of repetition.
For example, since the number of bits per particular time period becomes 1/2 of the full rate when transmitted at 1/2 rate, the duration of the output from the encoder also becomes 1/2. Thus, the encoder repeats the same contents twice, and the transmission power is set at 1/2. Likewise, background noise is encoded at 1/8 rate during the soundless interval, so that the error correcting encoder continually outputs the same encoded data eight times, enabling the transmission to be carried out with the transmission power reduced to 1/8.
Thus, the example as shown in FIGS. 29 and 30 discloses a means for reducing generation of the interference by using the orthogonal codes with the signals transmitted from the same base station, or a means for reducing the transmission power by switching the information rate in response to the voice communication state. This system, however, is a low transmission rate system assuming a cellular telephone system, and hence the maximum rate of the voice channel data 2901 shown in FIG. 29 is limited to 9.6 kbps. Accordingly, other means are required to transmit higher rate data such as image or computer data rather than voice data.
FIG. 31 shows an apparatus for transmitting higher rate data disclosed in JP-T 5/506763, and corresponds to the apparatus shown in FIGS. 29 and 30. The apparatus shown in FIG. 31 differs from that shown in FIGS. 29 and 30 in that its controller 3101 keeps constant the spreading code rate, that is, the transmission bandwidth by optimally controlling the encoding factor of the error correcting encoder, interleave size, and the code length of the Walsh functions in response to the input data rate, thereby flexibly adjusting itself to various transmission rates. In JP-T 5/506763, Table I is shown as an example of the parameters of the controller 3101 of the encoding factor rate and the code length of the Walsh functions in accordance with the input data.
TABLE 1 ______________________________________ Spreading Input Total Walsh code rate data spreading Encoding function (M chips/s) rate(k bits/s) factor factor factor ______________________________________ 1.2288 9.6 128 2 64 1.2288 4.8 256 4 64 1.2288 19.2 64 2 32 1.2288 16 76.8 2.4 32 ______________________________________
In Table I, the spreading code rate is given as a product of the input data rate and the total spreading factor, where the spreading factor is the product of the encoding factor and the Walsh function factor. For example, in the case where the input data rate is 9.6 kbps, the error correcting code (convolutional code) with an encoding factor of two (=coding rate of 1/2) is used, the encoded symbol rate becomes 19.2 kbps (=9.6 kbps.times.2) after the error correcting encoding, and the spreading code rate becomes 1.2288M chips/s (=19.2 kbps.times.64) by multiplying each encoded bit by the Walsh function with a code length of 64. With the other transmission rates, they can be calculated in the same manner. Incidentally, the encoding factor means the ratio of the bit number of the output of the error correcting encoder to that of the input information. In other words, the encoding factor is the inverse number of the coding rate.
The above-mentioned setting method is expected to make optimum use of the available transmission band by utilizing the fact that the Walsh function factors have the powers of two owing to their structure, and the upper limit of the spreading code rate is limited to 1.2288M chips/s. This is achieved by adjusting the encoding factor and Walsh function factor when the input data rate is an integer multiple of 9.6 kbps, or by making the encoding factor different from the integer multiple and setting the Walsh function factor appropriately when the input data rate is not the integer multiple. To achieve this, a technique called punctured encoding is used for the encoding method in addition to the convolutional encoding.
Thus, the example as shown in FIG. 31 handles the increase in the transmission rate by varying the encoding factor and the Walsh function factor. A further increase in the transmission rate will require a decrease in the encoding factor or the Walsh function factor.
The decrease in the encoding factor, however, results in the reduction of the error correcting performance, and this will prevent the required transmission quality from being achieved. In the example as shown in FIG. 31, to achieve the transmission quality matching that of the data transmission of 9.6 kbps, the encoding factor of two or more is needed.
The reduction in the Walsh function factor, on the other hand, results in a decrease in the code length of PN-I and PN-Q to be multiplied, which in turn results in a decrease in the spreading factor (spreading code rate/data transmission rate), and this will reduce the characteristics of the spread spectrum communications such as multiple access, anti-jamming, anti-interference, thereby limiting its spreading factor. For example, Ryuji KOHNO et al. reported that the processing gain (that is, the spreading factor) was limited to about 100-1000, considering the multipath fading resistance and system uniformity, in Ryuji KOHNO, et al. "Spread Spectrum Access Methods for Wireless Communications", IEEE Communications Magazine, pp. 58-67, January 1995) (the upper limit is restricted by hardware implementation and frequency band assignment, and so on).
Thus, it is necessary to employ other measures to carry out communications at a data rate exceeding 19.2 kbps in the example as shown in FIG. 31. FIGS. 32-36 are diagrams showing CDMA systems capable of handling various services, which were disclosed in A. H. Aghvami, "FUTURE CDMA CELLULAR MOBILE SYSTEMS SUPPORTING MULTI-SERVICE OPERATION", 5th IEEE International Symposium on Personal Indoor and Mobile Radio Communication, 1994.
FIG. 32 is a diagram illustrating a method in which signals of various data rates, such as data, image and voice, are each spread over the entire assigned frequency band. In this case, since the data rates differ while the code rate of the spreading codes is identical, the processing gain (spreading factor) varies in accordance with the data rates. The spreading codes and the transmission power also depend on the transmission quality required.
When the data rates differ from each other in the CDMA system, energy per data bit is usually adopted as a criterion to equalize the transmission quality. For example, high rate data (computer data, for instance) demands larger power because of shorter data interval, and low rate data (voice, for instance) requires smaller power because of longer data interval. Although this method is simple, it still has a problem similar to that of the system as shown in FIG. 31 in that it reduces the characteristics of the CDMA because its spreading factor decreases with an increase of the data rate.
FIG. 33 illustrates a method in which the entire frequency band is divided into sub-bands of different widths so that low rate signals (voice) are assigned to a smaller sub-band, middle rate signals (video) are assigned to a larger sub-band, and a high rate signal is assigned to the entire band. The smaller sub-band and the larger sub-band are used separately or repeatedly.
Although this method has an advantage that the processing gain (spreading factor) can be set within a certain range when the transmission rate is below a particular value, it also has a problem in that it reduces the characteristics of the CDMA as the systems shown in FIGS. 31 and 32 because the spreading factor decreases when the transmission rate exceeds the particular value. Furthermore, since the low rate signals and the middle rate signals use different frequencies, a control mechanism for assigning the frequency is required in addition to multiple frequency generators. Moreover, it has a problem in that both the transmitter and receiver become larger because of a plurality of analog sections (filters, for example) for matching various transmission bands corresponding to the rates.
FIG. 34 illustrates a method in which a time frame is divided into sub-slots of different length so that low rate signals (voice) are assigned to a smaller time slot, and middle rate signals (video) are assigned to a larger time slot, and a high rate signal is assigned to the entire time slot, thus using the time slots separately or repeatedly.
Although this method also has an advantage that the processing gain (spreading factor) can be set within a certain range when the transmission rate is below a particular value, it also has a problem in that it reduces the characteristics of the CDMA as the systems shown in FIGS. 31, 32 and 33 because the spreading factor decreases when the transmission rate exceeds the particular value.
Furthermore, since the data interval reduces with the spreading factor as the transmission rate increases in the methods shown in FIGS. 32-34, the discrimination performance is lost for delay waves with a delay corresponding to the data interval when periodic spreading codes are used. This presents a new problem in that it causes co-channel interference.
FIG. 35 illustrates a multicode system in which a plurality of spreading codes are assigned to middle rate signals and high rate signals. The middle rate signals and high rate signals undergo serial-to-parallel conversion in accordance with their rates so that resultant low rate signals are multiplexed after orthogonal encoded using orthogonal codes. This enables the various rate data to be spread at the same spreading factor, thereby providing measures against the reduction in the processing gain (spreading factor) and co-channel interference, the problems involved in the methods as shown in FIGS. 32-34. The variation in the amplitude due to the multiplexing can be solved by spreading the data using PN codes, after obtaining binary sequences from multilevel signal using a multi-values to binary conversion. The Aghvami paper discloses the application of orthogonal modulation, in which one of orthogonal codes like Walsh functions is selected, for the multilevel binary conversion (or for the multi-values to binary conversion).
The multilevel binary conversion, however, has a problem in that the frequency efficiency rapidly reduces with an increase of the multiplexed number. The reason for this is as follows. The code length of the orthogonal functions are given by 2.sup.N, where N is the multiplexed number. Accordingly, when the transmission is carried out under the same processing gain (spreading factor) and the same spreading code rate, the bandwidth increases by a factor of 2.sup.N as compared with the transmission using multi-valued levels.
In addition, a normal multilevel binary conversion without using the orthogonal modulation usually performs parallel-to-serial conversion, which demands N times the bandwidth as compared with the transmission using the multivalued levels as long as the processing gain (spreading factor) and the spreading code rate are fixed. Thus, the problem of the frequency efficiency reduction remains unsolved.
FIG. 36 illustrates a method combining the methods as shown in FIGS. 32-35. This method combines the systems as shown in FIGS. 32-35 in accordance with services offered or the propagation environment of electromagnetic waves. Although this method makes it possible to take optimum measures depending on the state of voice, image, or data, it has a problem in that the system control becomes exceedingly complicated, and assigning control becomes complex.
FIGS. 37-40 illustrate optimum systems of spectrum using, which are disclosed in JP-A 7/303090, in which the spectrum is optimized for high rate users (A, B, G and L), middle rate users (C, E, F, H, I, J, M, O and Q) and low rate users (D, K, N, P, R, S and T).
The method as shown in FIG. 37 assigns slot numbers and code numbers to users with different rates. It differs from the method as shown in FIG. 34 in that it assigns a plurality of spreading codes besides the slot numbers. The method as shown in FIG. 37 enables the high rate transmission to carry out the multicode transmission to keep the processing gain (spreading factor) greater than a fixed value. The method, however, has a problem in that the system becomes complicated. For example, although user F can obtain the desired processing gain (spreading factor) by using only a single code, it actually performs transmission using multicodes consisting of three codes C0, C1 and C3. This requires the receiver to prepare a plurality of correlators, thereby making the system complicated.
The method as shown in FIG. 38 assigns sub-frequency bands and codes to users of different rates, that is, to high rate users (A, B, G and L), middle rate users (C, E, F, H, I, J, M, O and Q) and low rate users (D, K, N, P, R, S and T). It differs from the method as shown in FIG. 33 in that it assigns a plurality of spreading codes besides the subfrequency bands. The method as shown in FIG. 38 enables the high rate transmission to carry out the multicode transmission to keep the processing gain (spreading factor) greater than a fixed value. This method, however, has a problem in that the system becomes complicated. For example, although user F can obtain the desired processing gain (spreading factor) by using only a single code, it performs transmission using multicodes consisting of three codes C0, C1 and C3. This requires the receiver to prepare a plurality of correlators, thereby making the system complicated. Furthermore, it has another problem in that complicated control must be performed such as frequency assignment and code assignment. Moreover, it has a problem in that both the transmitter and receiver become large because a plurality of analog sections must be prepared which include multiple transmission bands and frequency synthesizers corresponding to a plurality of transmitting and receiving frequencies and frequency bands.
The method as shown in FIG. 39 assigns both slots and codes to users of different rates, that is, to high rate users (A, B, G and L), middle rate users (C, E, F, H, I, J, M, O and Q) and low rate users (D, K, N, P, R, S and T). The codes are not multicodes but single codes with different code lengths. The high rate users can achieve high rate transmission by occupying a small code C5 over a long time period in the code space as denoted by A in this figure, or by occupying a large code G for a short time in the code space as denoted by G in this figure.
The method as shown in FIG. 39 assigns only one code to each user, thus allowing the receiver to prepare only one correlator for each corresponding code. It is necessary for the receiver, however, to increase the code rate when a large code space is assigned, and this requires the receiver to prepare a plurality of spreading code generators and correlators so that it can cope with the code rate corresponding to the large code space. Furthermore, either analog sections including a plurality of transmission bands must be prepared, or wideband filters must be prepared allowing the degradation of characteristics. The former presents a problem in that the size of the transmitter and receiver increases, and the latter has a problem in that the transmission quality is degraded.
FIG. 40 shows a method in which the slots, frequencies and codes as shown in FIGS. 38 and 39 are combined to achieve optimum results with the users of different rates, that is, high rate users (F, G and H), middle rate users (A, B, C and E) and low rate users (D, H, I, K and L). This method has an advantage that the frequency, time and code space can be efficiently utilized. The method, however, has a problem in that complicated control is required to assign the frequency, time and codes. In addition, since it is necessary for both the transmitter and receiver to prepare a plurality of correlators corresponding to the multiple codes, and analog sections corresponding to the plurality of transmission bands, a new problem arises that the circuit scale increases.
The methods as shown in FIGS. 37 and 38 do not take steps for the multivalued signal levels due to multicode multiplexing. Accordingly, the demand grows severe for linearity of the power amplifier used in the transmitter in accordance with the multivalues of the signal levels. This presents a further problem in that this prevents a reduction of a circuit size and a power consumption of a circuit.
Generally speaking, the number of simultaneously communicatable channels is less than that of assignable channels (that is, the number of codes). This is because the multiplex transmission from a base station to mobile stations using orthogonal codes is subjected to interference due to multipath fading and base stations of neighboring cells, and such interference increases with the number of multiplexed channels, and hence an required error rate comes to be unachievable. The reverse link transmission from mobile stations to the base station has greater interference than the forward link transmission from the base station to the mobile stations because it is difficult for the mobile stations to synchronize transmission timings among them.
In the foregoing paper of Gilhousen et al, "On the Capacity of a Cellular CDMA Systems", IEEE Transactions on Vehicular Technology vol. 40, No. 2, May 1991, Gilhousen et al. reports that although the number of assignable channels to the base station is 64 in the system as shown in FIGS. 29 and 30, the number of simultaneously communicatable channels falls about 36. The number is an ideal one considering channel the increasing effect of channels due to reduction of rates in response to the state of voices, and assuming the best conditions of transmission power control and sectoring gain, and therefore the actual number of simultaneously communicatable channels is further reduced. In other words, the actual number of practically usable channels will be reduce to only about half the assignable channels. This is true with the conventional methods of FIGS. 31-40.
One possible method to make effective use of the assignable channels would be to limit the multiplexed number (Walsh function factor) to 32 out of 64 as shown in the following Table 2, and to increase the error correcting power of the error correcting codes. This method corresponds to set the encoding factor at a high value.
TABLE 2 ______________________________________ Input Spreading data Total Walsh code rate rate spreading Encoding function (M chips/s) (k bits/s) factor factor factor ______________________________________ 1.2288 9.6 128 4 32 ______________________________________
Although adopting such a method will increase the communication quality because of the improved error correcting performance, it presents a problem in that the amount of processing involved in decoding becomes enormous, and the scale of hardware increases. More that is, when adopting convolutional codes as the error correcting codes as already described in connection with the conventional techniques, Viterbi decoding is often employed as a decoding method, whose processing amount depends on the encoding factor 1/r and the constraint length K, and is proportional to (1/r).sup.K, where r is the encoding rate. Thus, if the encoding factor is doubled from two to four for example, the processing amount is increased from 2.sup.K to 4.sup.K. As for the constraint length K, the conventional techniques usually use a value from seven to nine, and hence the processing amount of decoding increases in proportion to 2.sup.7 or 4.sup.7.
In addition, it is preferable to take some steps for carrying out multi-valued levels of signals due to multicode multiplexing.
FIG. 41 is a system block diagram of a parallel combination system proposed in "Consideration on Soft Decision Viterbi Decoding Characteristics under Multipath Rayleigh Fading in PC-CDMA (Parallel Combination Code Division Multiplex Access)" by Katsura, et al, Technical Report of the Institute of Electronics, Information and Communication Engineers of Japan SST95-58 (1995-09), pp. 79-83.
In FIG. 41, the information data undergoes the error correcting encoding by convolutional codes with a rate of 1/2, followed by the interleaver, and is divided in parallel into 128 encoded) bits. The 128 encoded bits undergo multicode multiplexed transmission by every four encoded bits in 32 groups. The orthogonal codes for multicode multiplexing are called orthogonal Gold codes and prepared total of 256. However, since the multiplexed number is 32, the 256 orthogonal Gold codes are divided into 32 groups each consisting of eight Gold codes, one of which is selected from each group. The code to be selected is decided by the four encoded bits. That is, three encoded bits decides which one of the eight orthogonal codes is to be selected, and the remaining one bit decides the polarity of the selected orthogonal code. The orthogonal Gold codes are described in Shu et al. "On Nonlinear Binary Spreading Sequences", pp. 37-42 of Technical Report of the Institute of Electronics, Information and Communication Engineers of Japan, IT90-7, May 1990.
At the receiving side, the four encoded bits per group can be decoded by detecting which code is transmitted in which polarity. In the case, it is necessary for the receiver to perform coherent detection to detect the polarity. The system as shown in FIG. 41 effectively carries out the coherent detection by simultaneously transmitting multiplexing orthogonal codes for a pilot channel, and by extracting the carrier phase by demodulating the pilot channel at the receiving side.
This method is called biorthogonal signal transmission method, and its characteristics were reported in M. Yokoyama, "Spread Spectrum Communication System", 1988, Science and Technology Publishing Company Inc. in Japan. The biorthogonal signal transmission method has an advantage of reducing the error rate over the common signal transmission method. In addition, it provides an advantage of mitigating the requirement for the linearity of an amplifier because the multiplexed number is reduced to 1/4 since one orthogonal code corresponds to four encoding bits.
The system as shown in FIG. 41, however, has a problem in that the size of both the transmitter and receiver is increased because the transmitter must prepare the entire orthogonal codes, and the receiver must calculate the correlations between the entire orthogonal codes and the received signal. In addition, it lacks flexibility with low rate transmission whose bit number differs from an integer multiple of the four encoding bits. Furthermore, since the receiver must be provided with individual correlators for respective channels as the rate of data increases, thereby increasing a hardware scale of or a circuit size of a communication system.